package cn.wolfcode.trip.base.service;

import cn.wolfcode.trip.base.domain.User;
import cn.wolfcode.trip.base.query.QueryObject;
import cn.wolfcode.trip.base.query.UserQuery;
import com.github.pagehelper.PageInfo;

public interface IUserService {

    void register(User user);

    User login(String email, String password);

    PageInfo<?> query(QueryObject qo);

    void update(User user);

    User selectByUserId(Long authorId);

    int getFansByCount(Long id);

    int getFollowByCount(Long id);

    //List<User> listAll();
    PageInfo<?>  selectFollowAndFansById(UserQuery qo);

    User getById(Long id);

    void updateBalance(User user);

    void updateMoney(User user);

    int checkFollowAndFans(UserQuery qo);

    void deleteUserByFans(UserQuery qo);

    void saveUserByFans(UserQuery qo);

}
